<?
/**
 * <b>renderer</b>
 *
 * Abstract base class providing renderer functionality
 * Cannot be instantiated
 *
 * @package gravy.classes.renderers
 * @class renderer extends errorHandler
 */
abstract class renderer extends errorHandler{
	public $gravy;
	public $headerSent=false;
	public function __construct($gravy){
		parent::__construct();
		$this->gravy=$gravy;
	}

	/**
	* <b>setHeadersForOutput</b>
	* Abstract function to be implemented by each child-class
	* Sets up the header information, so for example if we're outputting XML other programs can recognize what it is.
	*
	* @fn setHeadersForOutput
	* @param $statusCode [def = null]
	* @return void
	*/
	abstract function setHeadersForOutput($statusCode=null);
	
	abstract function render();
	
};
?>
